package com.ldkj.panzh.param;

import lombok.Data;

import java.util.List;

/**
 * 查询车辆记录 参数
 *
 * @author qiancheng
 * @date 2025-11-19
 */
@Data
public class VehicleRecordParam extends BaseParam {

    /**
     * 开始时间（必填）
     * 格式：yyyy-MM-dd'T'HH:mm:ss.SSSXXX
     * 例如：2025-11-19T00:00:00.000+08:00
     */
    private String startTime;

    /**
     * 结束时间（必填）
     * 格式：yyyy-MM-dd'T'HH:mm:ss.SSSXXX
     * 例如：2025-11-19T23:59:59.999+08:00
     */
    private String endTime;

    /**
     * 车牌号码（模糊查询，可选）
     */
    private String plateNo;

    /**
     * 车牌颜色（可选）
     * 0-白色，1-黑色，2-蓝色，3-黄色，4-绿色，5-其他
     */
    private Integer plateColor;

    /**
     * 车辆类型（可选）
     * 0-客车，1-货车，2-轿车，3-面包车，4-小型车，5-中型车，6-大型车
     */
    private Integer vehicleType;

    /**
     * 卡口编号列表（可选）
     * 支持批量查询
     */
    private List<String> cameraIndexCodes;

    /**
     * 区域编号列表（可选）
     */
    private List<String> regionIndexCodes;

    /**
     * 是否包含子区域
     * true：查询 regionIndexCodes 及其所有子区域
     * false：仅查询 regionIndexCodes
     */
    private Boolean isSubRegion;

    /**
     * 当前页码（默认值：1）
     */
    private Integer pageNo = 1;

    /**
     * 分页大小（默认值：100）
     */
    private Integer pageSize = 100;

    /**
     * 排序字段（可选）
     * 例如：captureTime
     */
    private String orderBy;

    /**
     * 排序方式（可选）
     * asc：升序
     * desc：降序
     */
    private String orderType;
}
